package com.alameda.service.danmaku;

import com.alameda.common.commonpent.mp.BaseService;
import com.alameda.danmaku.dto.ApVideoDanmakuDTO;
import com.alameda.danmaku.vo.ApVideoDanmakuVO;
import com.alameda.pojo.danmaku.ApVideoDanmakuDO;

import java.util.List;

/**
 * 视频弹幕 业务逻辑层
 *
 * @author Lv
 * @date 2024/10/07
 */
public interface ApVideoDanmakuService extends BaseService<ApVideoDanmakuDO> {
    /**
     * 查询弹幕
     *
     * @param apVideoDanmakuDTO 视频弹幕信息
     * @return
     */
    List<ApVideoDanmakuVO> load(ApVideoDanmakuDTO apVideoDanmakuDTO);

    /**
     * 保存弹幕
     *
     * @param apVideoDanmakuDO 视频弹幕
     * @return
     */
    Boolean saveDanmaku(ApVideoDanmakuDO apVideoDanmakuDO);

    /**
     * 删除视频弹幕
     *
     * @param idList 媒体文件id集合
     * @return
     */
    Boolean removeDanmakuByMediaIdList(List<Long> idList);

    /**
     * 物理层面删除已逻辑删除超过七天的视频弹幕
     */
    Boolean removeLogicDeletedFileDanmaku();
}
